
All new (previously not known) peers found in the \lstinline{Peers} message received from either of the two streams as well as newly connected peers that dialled in should be automatically broadcast to all connected peers that are closer  to them than the node's base overlay address. Formally, 
node $s$ (sender) notifies an existing peer $r$ (recipient) about peer $p$ if $\mathit{PO}(s, r) = \mathit{PO}(s, p)$. 

\subsection{Connectivity and its constraints}

Without resource constraints the optimal connectivity for a proper storer node is full  connectivity, i.e. when a node has all other nodes in the network as their peer. The chequebook contract also prefers a small number of peer connections to be maintained and other network overhead costs for keepalive connections or network socket shortage also implicates that 
above a certain network size full connectivity is prohibitive.

The relative gain is maximised if throughput on all keepalive connections are maximised. If network contention prevents a node from forwarding to a peer insantaneously, another peer must to be chosen. 
Assuming uniformity in the network 
%(see appendix \ref{sec:distribution}) 
throughput maximisation in the context of limited number of peer connections can be achieved with a connectivity pattern where each kademlia bin has a constant cardinality of $2^b$ and peers in the bin are balanced, i.e., match each distinct bit prefix of length $b$.
Therefore, connectivity strategy can be formulated as follows:







\subsection{Light node connection strategy}

Light nodes in the context of connection topology are nodes that do not have kademlia connectivity. In the extreme case, a light node should be able to get away with a single connection. The lack of full connectivity is indicated to the node's peers so that no retrieve requests or  push sync requests are sent to them. Note that if a node falsely indicates its status, that should cause minimal disruption. 

A lightnode wants to identify its neighboorhood so that it connects to at least one of the $R$ storer nodes closest to it (where $R$ is the redundancy parameter determining the minimum neighbourhood size).



